home *** CD-ROM | disk | FTP | other *** search
- #include <exec/types.h>
- #include <exec/memory.h>
- #include <dos/dos.h>
- #include <dos/dosextens.h>
- #include <dos/notify.h>
- #include <intuition/intuition.h>
- #include <intuition/gadgetclass.h>
- #include <intuition/intuitionbase.h>
- #include <intuition/classusr.h>
- #include <intuition/imageclass.h>
- #include <intuition/gadgetclass.h>
- #include <intuition/cghooks.h>
- #include <intuition/icclass.h>
- #include <intuition/classes.h>
- #include <intuition/sghooks.h>
- #include <intuition/screens.h>
- #include <datatypes/datatypesclass.h>
- #include <datatypes/datatypes.h>
- #include <datatypes/pictureclass.h>
- #include <graphics/gfxbase.h>
- #include <graphics/text.h>
- #include <graphics/gfxmacros.h>
- #include <utility/tagitem.h>
- #include <utility/hooks.h>
- #include <libraries/commodities.h>
- #include <string.h>
- #include <clib/macros.h>
- #include "gaugeclass.h"
- #include "tinymeter.h"
-
- getVolsize(struct tm_sys_set *set,struct tm_data *data,char *volname)
- {
- struct InfoData inf;
- struct DevProc *devproc;
- struct DosList *dl=0;
- int dummy;
-
- if(dl = (struct DosList *)LockDosList(LDF_VOLUMES|LDF_DEVICES|LDF_READ));
- {
- dummy=my_strlen(volname)-1;
- volname[dummy]=0;
- if(FindDosEntry(dl,volname,LDF_VOLUMES|LDF_DEVICES))
- {
- volname[dummy]=':';
- if(devproc=(struct DevProc *)GetDeviceProc(volname,NULL))
- {
- if( DoPkt(devproc->dvp_Port,ACTION_DISK_INFO,MKBADDR(&inf),NULL,NULL,NULL,NULL)==DOSTRUE)
- {
- switch(inf.id_DiskType)
- {
- case ID_UNREADABLE_DISK:
- case ID_NOT_REALLY_DOS:
- case ID_NO_DISK_PRESENT:
- data->volmax=0;
- data->volcur=0;
- break;
- default:
- data->volcur=(inf.id_NumBlocks-inf.id_NumBlocksUsed)*inf.id_BytesPerBlock;
- data->volmax=inf.id_NumBlocks*inf.id_BytesPerBlock;
- break;
- }
- }
- FreeDeviceProc(devproc);
- }
- }
- UnLockDosList(LDF_VOLUMES|LDF_DEVICES|LDF_READ);
- }
- }
-
-